from apscheduler.schedulers.background import BackgroundScheduler
from django_apscheduler.jobstores import DjangoJobStore, register_events, register_job

#开启定时工作
from Task.taskList import update_enterpise_task

scheduler_plan = BackgroundScheduler()  ##实例化调度器
try:
    # 调度器使用DjangoJobStore()
    scheduler_plan.add_jobstore(DjangoJobStore(), "default")
    # 设置定时任务，选择方式为interval，时间间隔为15 minutes
    # 另一种方式为周一到周五固定时间执行任务，对应代码为：
    # @register_job(scheduler_plan, 'cron', day_of_week='mon-fri', hour='8', minute='30', second='10',id='task_time')
    #@register_job(scheduler_plan,"interval", seconds=1)
    @register_job(scheduler_plan, 'cron', hour='18', minute='3', second='30', id='task', misfire_grace_time=3600, replace_existing=True)
    def my_job():
        # 这里写你要执行的任务
        print("开始执行任务。。。")
        #update_enterpise_task()
        pass
    register_events(scheduler_plan)
    scheduler_plan.start()
except Exception as e:
    print(e)
    # 有错误就停止定时器
    scheduler_plan.shutdown()


